/*
 * Copyright 2008 Federal Emergency Management Agency
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"); 
 * you may not use this file except in compliance with the License. 
 * You may obtain a copy of the License at 
 * 
 *    http://www.apache.org/licenses/LICENSE-2.0 
 *    
 * Unless required by applicable law or agreed to in writing, software 
 * distributed under the License is distributed on an "AS IS" BASIS, 
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and 
 * limitations under the License. 
 *  
 */
package gov.fema.hazus.bdc.client.search;

import gov.fema.hazus.bdc.client.common.BuildingQuery;

import java.util.ArrayList;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.rpc.ServiceDefTarget;

public class SearchServiceProxy {

    private static SearchServiceProxy instance;
    private SearchServiceAsync proxy;

    private SearchServiceProxy()
    {
        proxy = (SearchServiceAsync) GWT
                .create(SearchService.class);
        ((ServiceDefTarget) proxy).setServiceEntryPoint(GWT.getModuleBaseURL()
                + "search");
    }

    public static SearchServiceProxy get()
    {
        if (instance == null) {
            instance = new SearchServiceProxy();
        }
        return instance;
    }

    public void search(BuildingQuery query, AsyncCallback callback) {
    	GWT.log("new SearchService is working", null);
        proxy.search(query, callback);
    }
    
}
